"""
有的因为是排序了，所以用二分法
有的是因为没有排序，且不含有负数，所以用位运算
有的是因为没有排序，且含有负数，所以用交换
"""